package cn.net.isir.utils;

import java.math.BigDecimal;

/**
 * @author liuxubo
 * @filename NumberUtils.java
 * @package cn.net.isir.utils
 * @email lxb@isir.net.cn
 * @date 2019/04/12
 * @comment
 * @since 1.8
 */
public class NumberUtils {

    /**
     * 将参数转换为BigDecimal类型
     *
     * @param num 将要转换的参数
     * @return BigDecimal结果, 转换失败将返回null
     */
    public static BigDecimal toBigDecimal(String num) {
        BigDecimal result = null;
        try {
            double d = Double.parseDouble(num);
            result = BigDecimal.valueOf(d);
        } catch (Exception ex) {
            ex.printStackTrace();
        }
        return result;
    }

    /**
     * 将参数转换为BigDecimal类型
     *
     * @param num 将要转换的参数
     * @return BigDecimal结果, 转换失败将返回null
     */
    public static BigDecimal toBigDecimal(Integer num) {
        BigDecimal result = null;
        try {
            double d = Double.parseDouble(String.valueOf(num));
            result = BigDecimal.valueOf(d);
        } catch (Exception ex) {
            ex.printStackTrace();
        }
        return result;
    }

    /**
     * 将参数转换为BigDecimal类型
     *
     * @param num 将要转换的参数
     * @return BigDecimal结果, 转换失败将返回null
     */
    public static BigDecimal toBigDecimal(Double num) {
        BigDecimal result = null;
        try {
//            double d = Double.parseDouble(num);
            result = BigDecimal.valueOf(num);
        } catch (Exception ex) {
            ex.printStackTrace();
        }
        return result;
    }
}
